﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Crosland.Automotriz.Logic.Linq;
using Crosland.Automotriz.Core;
using DevExpress.Web.ASPxPivotGrid;
using DevExpress.XtraPivotGrid;
using System.Data;
using Crosland.Automotriz.Facade.Interface;
using Crosland.Automotriz.Facade.Facade;
using System.Configuration;
namespace Crosland.Automotriz.Web.Repuestos
{
    public partial class wFrmPronosticoImportacionSeguimientoImportacion : System.Web.UI.Page
    {
        string idNegocio = ConfigurationManager.AppSettings["Negocio"];
        clsImportacionesLogic Importacion = new clsImportacionesLogic();


         iFacadePronosticoImportacion logimportacion = new FacadePronosticoImportacion();

      

        void cargarMaestroxDefecto() {


            try
            {

            dgImportacionCab.DataSource = Importacion.ImportacionCAB(2013,"TRANSITO");
            dgImportacionCab.DataBind();
            }
            catch 
            {
            }
        
        }


        void cargarMaestro (){


            try
            {
            dgImportacionCab.DataSource = Importacion.ImportacionCAB(Convert.ToInt16(cboAnio.Text),Convert.ToString(cboExtado.Value));
            dgImportacionCab.DataBind();
            }
            catch 
            {}

        
        }

        void listarEstado() {
            cboExtado.DataSource = logimportacion.listarLog_Imp_Mae_Estado();
            cboExtado.TextField = "DES_IMP_ESTADO";
            cboExtado.ValueField = "IND_TRANSITO";

            cboExtado.DataBind();
        
        
        }


        protected void cmdNuevo_Click(object sender, EventArgs e)
        {
            Response.Redirect("~/Repuestos/wFrmPronosticoImportacionActualizar.aspx?id=" + idNegocio);
        }

      

       

        protected void cmdMostrar_Click(object sender, EventArgs e)
        {



            cargarMaestro();

            dgImportacionCab.FocusedRowIndex = -1;


            if (dgImportacionCab.VisibleRowCount == 0) {
                dgImportacionDet.DataSource = "";
                dgImportacionDet.DataBind();
            
            }

        }


    

        protected void dgImportacionDet_PageIndexChanged(object sender, EventArgs e)
        {

            try
            {
            dgImportacionDet.DataSource = Importacion.ImportacionDET((string)dgImportacionCab.GetRowValues(dgImportacionCab.FocusedRowIndex, "NUM_PEDIDO"));
            dgImportacionDet.PageIndex = 0;
            dgImportacionDet.DataBind();

            }
            catch 
            {}

        
        }

   

        protected void cmdSalir_Click(object sender, EventArgs e)
        {
            Response.Redirect("~/Seguridad/wFrmDefault.aspx?id="+idNegocio);
        }

        protected void btnPopGrabar_Click(object sender, EventArgs e)
        {

            try
            {
            clsImportacionesLogic impcab_BL = new clsImportacionesLogic();


            if (impcab_BL.ModificarCAB(lblnumeroPedido.Text, (DateTime)dpdFecEmbarque.Value, (DateTime)
                dpdFecEmbarqueEst.Value, (DateTime)dpdFecLlegaPuerto.Value, (DateTime)dpdFecLlegaPuertoEst.Value, txtObservacion.Text,Convert.ToString(cboEstadoImp.Value)))
            {
                cargarMaestro();
                this.recuperarDatos();
                
                string script = "Showpopupmsj();";
               ScriptManager.RegisterStartupScript(this, typeof(Page), "carga", script, true);
               

            }
            else
            {
                string script = "ShowpopupmsjError();";
                ScriptManager.RegisterStartupScript(this, typeof(Page), "carga", script, true);
            }



            }
            catch 
            {}
            
        }


        private void recuperarDatos(){

            try
            {


            lblcodigo.Text = Convert.ToString(dgImportacionCab.GetRowValues(dgImportacionCab.FocusedRowIndex, "NUM_PEDIDO").ToString());
            txtfecEmEst.Text = dgImportacionCab.GetRowValues(dgImportacionCab.FocusedRowIndex, "FEC_EMBARQUE_EST").ToString();
            txtfecEm.Text = dgImportacionCab.GetRowValues(dgImportacionCab.FocusedRowIndex, "FEC_EMBARQUE").ToString();
            txtFecLlegEst.Text = dgImportacionCab.GetRowValues(dgImportacionCab.FocusedRowIndex, "FEC_LLEG_EST_PUERTO").ToString();
            txtFecLleg.Text = dgImportacionCab.GetRowValues(dgImportacionCab.FocusedRowIndex, "FEC_LLEG_PUERTO").ToString();
            txtPopObser.Text = (string)dgImportacionCab.GetRowValues(dgImportacionCab.FocusedRowIndex, "OBSERVACION");
            cboEstadoImp.Text = (string)dgImportacionCab.GetRowValues(dgImportacionCab.FocusedRowIndex, "Estado");

            }
            catch
            { }
            
    }

        protected void dgImportacionCab_FocusedRowChanged(object sender, EventArgs e)
        {


            try
            {
             if (dgImportacionCab.VisibleRowCount == 0)
            {


            }
            else
            {

                this.recuperarDatos();
                dgImportacionDet.DataSource = Importacion.ImportacionDET((string)dgImportacionCab.GetRowValues(dgImportacionCab.FocusedRowIndex, "NUM_PEDIDO"));
                dgImportacionDet.PageIndex = 0;
                dgImportacionDet.DataBind(); 
            }
         
            }
            catch 
            {
              
            }

        }

        protected void btnPopAceptar_Click(object sender, EventArgs e)
        {
            try
            {
                if (Convert.ToString(dgImportacionCab.GetRowValues(dgImportacionCab.FocusedRowIndex, "Estado")).ToLower() == "anulado")
                {

                    string script = "ShowPopupEstadoAnulado();";
                    ScriptManager.RegisterStartupScript(this, typeof(Page), "carga", script, true);
                }
                else
                {



                    clsImportacionesLogic impcab_BL = new clsImportacionesLogic();
                    if (impcab_BL.Anular_importacion((string)dgImportacionCab.GetRowValues(dgImportacionCab.FocusedRowIndex, "NUM_PEDIDO")))
                    {
                        cargarMaestro();
                        string script = "ShowpopupmsjAnular();";
                        ScriptManager.RegisterStartupScript(this, typeof(Page), "carga", script, true);
                    }
                    else
                    {
                        string script = "ShowpopupmsjErrorAnular();";
                        ScriptManager.RegisterStartupScript(this, typeof(Page), "carga", script, true);
                    }

                }

            }
            catch
            {

            }

        }

        protected void btnconsultar_Click(object sender, EventArgs e)
        {
            try
            {
            Session["num_pedido"] = lblcodigo.Text;
            Session["pedido1"] = txtPedido1.Text.Substring(0, 3);
            Session["pedido2"] = txtPedido2.Text.Substring(0, 3);

            string script = "url();";
            ScriptManager.RegisterStartupScript(this, typeof(Page), "popup", script, true);
            }
            catch
            {
                
           
            }
           
        }


        void enviarDtsModifica() {



            try
            {


           Session["NUM_PEDIDO"] = Convert.ToString(dgImportacionCab.GetRowValues(dgImportacionCab.FocusedRowIndex, "NUM_PEDIDO").ToString());
            Session["FEC_PEDIDO"] = dgImportacionCab.GetRowValues(dgImportacionCab.FocusedRowIndex, "FEC_PEDIDO").ToString();
            Session["FEC_EMBARQUE"] = dgImportacionCab.GetRowValues(dgImportacionCab.FocusedRowIndex, "FEC_EMBARQUE").ToString();
            Session["FEC_LLEG_EST_PUERTO"] = dgImportacionCab.GetRowValues(dgImportacionCab.FocusedRowIndex, "FEC_LLEG_EST_PUERTO").ToString();
            //Session["FEC_LLEG_PUERTO"] = dgImportacionCab.GetRowValues(dgImportacionCab.FocusedRowIndex, "FEC_LLEG_PUERTO").ToString();
            Session["OBSERVACION"] = (string)dgImportacionCab.GetRowValues(dgImportacionCab.FocusedRowIndex, "OBSERVACION");
            Session["Proveedor"] = (string)dgImportacionCab.GetRowValues(dgImportacionCab.FocusedRowIndex, "Proveedor");

            }
            catch 
            {}
        
        }

        protected void btnModificarDEt_Click(object sender, EventArgs e)
        {


            if (dgImportacionCab.FocusedRowIndex==-1)
            {

                    return;

                
            }
            else
            {
                this.enviarDtsModifica();

                Response.Redirect("~/Repuestos/wFrmPronosticoImportacionActualizar.aspx?id=" + idNegocio);

            }
    }

        protected void dgImportacionCab_PageIndexChanged(object sender, EventArgs e)
        {
            cargarMaestro();
        }


        void cargarDetalle() {
            try
            {
            dgImportacionDet.DataSource = Importacion.ImportacionDET((string)dgImportacionCab.GetRowValues(dgImportacionCab.FocusedRowIndex, "NUM_PEDIDO"));
            dgImportacionDet.DataBind();
            }
            catch 
            {}

            
        }

        protected void dgImportacionDet_AfterPerformCallback(object sender, DevExpress.Web.ASPxGridView.ASPxGridViewAfterPerformCallbackEventArgs e)
        {
            this.cargarDetalle();
        }

        protected void dgImportacionCab_AfterPerformCallback(object sender, DevExpress.Web.ASPxGridView.ASPxGridViewAfterPerformCallbackEventArgs e)
        {
            cargarMaestro();
        }

        protected void Page_Load(object sender, EventArgs e)
        {


            if (!IsPostBack)
            {
                ScriptManager.RegisterStartupScript(this, typeof(Page), "carga", "JavaScript:confirmSubmitResult();", true);
                listarEstado();
               
                cboEstadoImp.SelectedIndex = 0;
                cargarMaestroxDefecto();

                this.cargarDetalle();
           
            } 
            listarComboModificar();
           
           
        
        }


        void listarComboModificar() {

            cboEstadoImp.DataSource = logimportacion.listarLog_Imp_Mae_Estado();
            cboEstadoImp.ValueField = "COD_IMP_ESTADO";
            cboEstadoImp.TextField = "DES_IMP_ESTADO";
            cboEstadoImp.DataBind();
        }

        protected void dgImportacionCab_Load(object sender, EventArgs e)
        {
            if (dgImportacionCab.FocusedRowIndex == -1)
            {
                dgImportacionDet.DataSource ="";
                dgImportacionDet.DataBind();

            }
        }


    }
}